package com.example.analysis.service;

import com.example.analysis.domain.EvaluateListInfo;
import com.example.analysis.domain.ScoreInfo;
import com.example.analysis.domain.TimeInfo;
import com.example.analysis.entity.*;
import com.example.analysis.entity.Class;
import com.example.analysis.utils.Response;

import java.util.List;

public interface EvaluateListStudentService {

    Response<EvaluateListStudent> insert(EvaluateListStudent aEvaluateListStudentList);
    Response<List<EvaluateListStudent>> getById(String studentId, String subId, String teacherId);

    PageBean getAll(Integer pageNum, Integer pageSize,String semester);

    //txy  通过semester  subid  classid  查询
    List<EvaluateListInfo> getList(EvaluateListInfo evaluateListInfo);

    List<ScoreInfo> getCourse(String semester);

    List<Class> getByClassId(String subId,String semester);


    //获取时间窗口的统计信息
    List<TimeInfo> getTimeInfo(EvaluateListInfo evaluateListInfo);

    //不同学期某门课程平均分
    List<TimeInfo> getDiffSemester(EvaluateListInfo evaluateListInfo);


    List<Course> getClassOne();

    PageBean getEvaluate(Integer pageNum, Integer pageSize);

    List<ElectionList> getOne(String semester);

    List<Course> cal(List<ElectionList> elections);
}
